import { createStore, createLogger } from 'vuex'
import user from './modules/user'
import cart from './modules/cart'

import createPersistedstate from 'vuex-persistedstate'
// 导入模块
import category from './modules/category'
export default createStore({
  // 严格模式
  // strict: true,
  // 顶层数据
  state: {
    test: 100,
    a: 1
  },
  // mutations: {
  // },
  // actions: {
  // },
  modules: {
    user,
    cart,
    category
  },
  plugins: [
    /**
   * vuex-persistedstate插件使用说明：
   * 1. 默认集成之后存储所有数据
   * 2. 可以通过配置指定存储的key和存储哪些数据=》{ key: 'rabbit-131', paths: ['user.profile.token', 'cart'] }
   */
    createPersistedstate({
      key: 'rabbit-store',
      paths: ['a', 'user', 'cart']
    }),
    createLogger()
  ]
})
